#ifndef _CORE_H
#define _CORE_H

typedef struct tag_PARTICLE
{
	GLfloat xpos;
	GLfloat ypos;
	GLfloat zpos;
	GLfloat xspeed;
	GLfloat yspeed;
	GLfloat zspeed;
	GLfloat r;
	GLfloat g;
	GLfloat b;
	GLfloat life;
	GLfloat fade;
	GLfloat size;
	GLbyte	bFire;
	GLbyte	nExpl;
	
	GLbyte	bAddParts;
	GLfloat	AddSpeed;
	GLfloat	AddCount;

	tag_PARTICLE* pNext;
	tag_PARTICLE* pPrev;
} Particle,*pParticle;

extern GLfloat grav;
extern pParticle Particles;
extern AUX_RGBImageRec *TextTexture[2];

void gcUnloadLevel(void);
void gcLoadLevel(void);
void gcProcessLevel(void);
void gcAddParticle(Particle ex);
void gcDeleteParticle(pParticle* part);
void gcDeleteAll(pParticle* p);

#endif